package cn.iocoder.yudao.module.forward.service.testtemplate;

import java.util.*;
import javax.validation.*;
import cn.iocoder.yudao.module.forward.controller.admin.testtemplate.vo.*;
import cn.iocoder.yudao.module.forward.dal.dataobject.testtemplate.TestTemplateDO;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;

/**
 * 演练模板 Service 接口
 *
 * @author zhang
 */
public interface TestTemplateService {

    /**
     * 创建演练模板
     *
     * @param createReqVO 创建信息
     * @return 编号
     */
    Integer createTestTemplate(@Valid TestTemplateSaveReqVO createReqVO);

    /**
     * 更新演练模板
     *
     * @param updateReqVO 更新信息
     */
    void updateTestTemplate(@Valid TestTemplateSaveReqVO updateReqVO);

    /**
     * 删除演练模板
     *
     * @param id 编号
     */
    void deleteTestTemplate(Integer id);

    /**
     * 获得演练模板
     *
     * @param id 编号
     * @return 演练模板
     */
    TestTemplateDO getTestTemplate(Integer id);

    /**
     * 获得演练模板分页
     *
     * @param pageReqVO 分页查询
     * @return 演练模板分页
     */
    PageResult<TestTemplateDO> getTestTemplatePage(TestTemplatePageReqVO pageReqVO);

}